package org.albianj.kernel;

import java.util.Calendar;
import java.util.Date;

import org.albianj.service.IAlbianService;

public interface IAlbianLogicIdService extends IAlbianService {

	static String Name = "AlbianLogicIdService";
	/**
	 * ?????????????????????kernel???????????????ID???
	 * 
	 * @return 32?????????asiic?????????
	 */
	String makeStringUNID();

	/**
	 * ??????appname??????????????????ID
	 * 
	 * @param appname
	 *            ?????????????????????????????????????????????asiic????????????
	 *            ??????<=7,??????7???????????????7???
	 * @return 32?????????asiic?????????
	 */
	String makeStringUNID(String appName);

	String generate32UUID();

	String getAppName(String id);

	Date getGenerateDateTime(String id);

	Calendar getGenerateTime(String id);

	String makeLoggerId();

	String makeJobId();

}